5 POKE56,160:CLR:OPEN15,8,15 6 PRINT"[147]" 7 PRINT"PRESS D FOR DIRECTORY." 8 PRINT"PRESS T TO CHANGE FILETYPE." 9 PRINT"PRESS F TO MAKE FILE FIRST IN DIRECTORY." 10 PRINT"PRESS U TO UNSCRATCH FILE." 11 PRINT"PRESS S TO DELETE FILE." 12 PRINT"PRESS R TO RENAME FILE." 13 PRINT"PRESS C TO COPY FILE." 15 PRINT"PRESS E TO EXIT." 16 GETA$:IFA$="D"THENGOSUB200:GOTO300 18 IFA$="F"THEN600 19 IFA$="S"THEN1000 20 IFA$="C"THEN2000 21 IFA$="E"THENCLOSE15:END 22 IFA$="U"THEN700 23 IFA$="T"THEN30 24 IFA$="R"THEN3000 25 GOTO16 30 F$="":INPUT"[147]FILENAME";F$ 31 IFF$=""THEN30 32 OPEN8,8,8,"0:"+F$ 35 GOSUB900:IFVTHEN40 37 GOTO7 40 PRINT#15,"M-R";CHR$(144);CHR$(2);CHR$(5) 45 GET#15,A$:S=ASC(A$+CHR$(0)):GET#15,A$:GET#15,A$:GET#15,A$ 50 GET#15,A$:P=ASC(A$+CHR$(0)):T=18 55 CLOSE8:OPEN8,8,8,"#" 60 PRINT#15,"U1";8;0;T;S 65 PRINT#15,"B-P";8;P 70 GET#8,A$:B=ASC(A$+CHR$(0)) 75 X=0:A=BAND7:IFA=1THENA$="SEQ" 85 IFA=2THENA$="PRG" 90 IFA=3THENA$="USR" 95 IFA=4THENA$="REL" 100 PRINT:PRINTA$;" FILE.":X=0:IFBAND128THEN105 101 Z$="":PRINT"IMPROPERLY CLOSED FILE.":INPUT"VALIDATE (Y/N)";Z$ 102 IFZ$="Y"THENPRINT#15,"V0:":CLOSE8:GOTO6 103 IFZ$="N"THENCLOSE8:GOTO6 104 GOTO101 105 IF(BAND64)=0THEN110 106 Z$="":X=64:INPUT"LOCKED FILE. UNLOCK (Y/N)";Z$ 107 IFZ$="Y"THENX=0:GOTO110 108 IFZ$="N"THEN110 109 GOTO106 110 IFA=4THENPRINT"FILETYPE CAN'T BE CHANGED.":GOTO150 115 IFA<>1THENPRINT"PRESS S TO CHANGE TO SEQ FILE." 120 IFA<>2THENPRINT"PRESS P TO CHANGE TO PRG FILE." 125 IFA<>3THENPRINT"PRESS U TO CHANGE TO USR FILE." 127 PRINT"PRESS RETURN FOR NO CHANGE." 130 GETZ$:IFZ$="S"THENW=1:GOTO150 132 IFZ$=CHR$(13)THENW=A:GOTO150 135 IFZ$="P"THENW=2:GOTO150 140 IFZ$="U"THENW=3:GOTO150 145 GOTO130 150 PRINT"PRESS L TO LOCK FILE." 152 PRINT"PRESS RETURN, OTHERWISE." 155 GETZ$:IFZ$="L"THENX=64:GOTO165 157 IFZ$=CHR$(13)THEN165 160 GOTO155 165 Y=X+W+128:PRINT#15,"B-P";8;P 170 PRINT#8,CHR$(Y); 175 PRINT#15,"U2";8;0;T;S 180 CLOSE8:GOTO6 200 POKE183,1:POKE187,2:POKE188,0 205 POKE2,36:POKE186,8:POKE185,0 210 POKE780,0:POKE781,0:POKE782,192:SYS65493:RETURN 300 PRINT"[147]":N=0:M=1:A=49154 302 N=N+1:IFN<>16THEN307 304 N=0:M=0:PRINT"PRESS SPACE BAR TO CONTINUE." 305 GETA$:IFA$=" "THENPRINT:PRINT:GOTO307 306 GOTO305 307 PRINTPEEK(A)+256*PEEK(A+1); 310 A=A+1 315 A=A+1:IFPEEK(A)THENPRINTCHR$(PEEK(A));:GOTO315 320 PRINT:A=A+3:IFPEEK(A-1)THEN302 325 PRINT"PRESS RETURN FOR MAIN MENU." 326 IFMTHEN330 327 PRINT"PRESS SPACE BAR FOR REPEAT." 330 GETA$:IFA$=CHR$(13)THEN340 332 IFA$=" "THEN300 335 GOTO330 340 GOTO6 400 GOSUB200:PRINT"CALCULATING # OF ACTIVE FILE BLOCKS.":A=49183:L=0:H=0 405 A=A+1:P=PEEK(A):L=P+L:A=A+1:Q=PEEK(A):H=Q+H 410 A=A+1:IFPEEK(A)THEN410 415 IFPEEK(A+2)=0THEN425 420 A=A+2:GOTO405 425 G=L+256*H:PRINT:PRINTP+256*Q;"FREE BLOCKS." 430 PRINT:PRINTG-P-256*Q;"ACTIVE FILE BLOCKS." 435 RETURN 500 PRINT"FILE IS NOT RECOVERABLE." 505 PRINT"IT WAS OVERWRITTEN BY SUBSEQUENT FILE." 525 PRINT"SCRATCHING FILE..." 530 PRINT#15,U$:PRINT"VALIDATING AGAIN..." 535 PRINT#15,"V0:":CLOSE8:GOTO7 600 F$="":PRINT"[147]FILENAME TO BE MOVED" 602 INPUT"TO TOP OF DIRECTORY";F$ 603 IFF$=""THEN600 605 OPEN8,8,8,"0:"+F$ 610 GOSUB900:IFVTHEN620 615 GOTO7 620 IFA=60THEN101 625 PRINT#15,"M-R";CHR$(144);CHR$(2);CHR$(5) 630 GET#15,A$:S=ASC(A$+CHR$(0)):GET#15,A$:GET#15,A$:GET#15,A$ 635 GET#15,A$:P=ASC(A$+CHR$(0)):T=18 640 IFS=1ANDP=2THENPRINT"THAT FILE IS ALREADY AT TOP":CLOSE8:GOTO7 645 CLOSE8:OPEN8,8,8,"#" 650 PRINT#15,"U1";8;0;T;S 655 PRINT#15,"B-P";8;P 660 P$="":FORI=0TO29:GET#8,A$:A=ASC(A$+CHR$(0)):P$=P$+CHR$(A):NEXT 665 PRINT#15,"U1";8;0;T;1 670 PRINT#15,"B-P";8;2 675 Q$="":FORI=0TO29:GET#8,A$:A=ASC(A$+CHR$(0)):Q$=Q$+CHR$(A):NEXT 677 PRINT#15,"B-P";8;2 678 PRINT#8,P$; 680 PRINT#15,"U2";8;0;T;1 681 PRINT#15,"U1";8;0;T;S 682 PRINT#15,"B-P";8;P 683 PRINT#8,Q$; 685 PRINT#15,"U2";8;0;T;S 690 CLOSE8:GOTO6 700 OPEN8,8,8,"#":F=0:FF=0:J=1 705 SS=1 710 P=2:IFF=1THEN770 715 PRINT#15,"U1";8;0;18;SS 717 GET#8,A$:IFASC(A$+CHR$(0))=0THENF=1 718 GET#8,A$:S=ASC(A$+CHR$(0)) 720 GET#8,A$:B=ASC(A$+CHR$(0)) 722 GET#8,A$:IFASC(A$+CHR$(0))=0THEN710 725 IFBTHEN750 730 J=0:GOSUB800 735 IFFFTHENGOSUB400:IFG=664THENPRINT"FILE RECOVERED.":CLOSE8:GOTO7 740 IFFFTHEN500 750 IFP=226THENSS=S:GOTO710 755 P=P+32:PRINT#15,"B-P";8;P 760 GOTO720 770 CLOSE8:IFJTHENPRINT"[147]NO SCRATCHED FILES":GOTO7 780 GOTO6 800 PRINT"[147]" 805 PRINT#15,"B-P";8;P+3 810 FORI=1TO16:GET#8,A$:PRINTA$;:NEXT:PRINT,"DELETED FILE" 820 N$="":INPUT"UNSCRATCH (Y/N)";N$ 825 IFN$="N"THENRETURN 830 IFN$="Y"THEN840 835 GOTO820 840 PRINT"PRESS P FOR PRG" 845 PRINT"PRESS S FOR SEQ" 850 PRINT"PRESS U FOR USR" 855 GETN$:IFN$="P"THENB=130:GOTO875 860 IFN$="U"THENB=131:GOTO875 865 IFN$="S"THENB=129:GOTO875 870 GOTO855 875 FF=1:PRINT#15,"B-P";8;P 880 PRINT#8,CHR$(B); 882 PRINT#15,"B-P";8;P+3 885 U$="S0:":FORI=0TO15:GET#8,A$:IFA$="[160]"THENI=15:GOTO888 887 A=ASC(A$+CHR$(0)):U$=U$+CHR$(A) 888 NEXT 890 PRINT#15,"U2";8;0;18;SS 892 PRINT"VALIDATING..." 895 PRINT#15,"V0:":RETURN 900 V=0:INPUT#15,A,B$,C,D 910 IFA<20ORA=60THENV=1:RETURN 920 PRINT:PRINTA,B$:PRINT:PRINTC,D:CLOSE8:RETURN 1000 F$="":INPUT"[147]FILENAME";F$ 1010 IFF$=""THEN1000 1020 OPEN8,8,8,"0:"+F$ 1030 GOSUB900:IFVTHEN1050 1040 GOTO7 1050 IFA=60THEN101 1060 CLOSE8:PRINT#15,"S0:";F$ 1070 GOTO6 2000 F$="":INPUT"[147]FILENAME OF ORIGINAL";F$ 2010 IFF$=""THEN2000 2015 OPEN8,8,8,"0:"+F$ 2020 GOSUB900:IFVTHEN2030 2025 GOTO7 2030 IFA=60THEN101 2035 CLOSE8:FF$="":INPUT"FILENAME OF COPY TO BE MADE";FF$ 2040 IFFF$=""THEN2035 2045 PRINT#15,"C0:";FF$;"=";F$ 2050 GOSUB900:IFVTHEN6 2055 GOTO7 3000 F$="":INPUT"[147]OLD FILENAME";F$ 3005 IFF$=""THEN3000 3010 OPEN8,8,8,"0:"+F$ 3015 GOSUB900:IFVTHEN3030 3020 GOTO7 3030 IFA=60THEN101 3035 CLOSE8:FF$="":INPUT"NEW FILENAME";FF$ 3040 IFFF$=""THEN3035 3045 PRINT#15,"R0:";FF$;"=";F$ 3050 GOSUB900:IFVTHEN6 3055 GOTO7